A control circuit for controlling a multi-phase electric motor typically includes an inverter circuit which has several switching circuits, each switching circuit including first and second electronic switches coupled in series across a source of power, and a node between the first and second electronic switches of each switching circuit being coupled to a respective phase input of the motor. The electronic switches are turned on and off in a predetermined sequence by the control circuit, in order to effect rotation of a spindle of the motor.
One exemplary application of such an arrangement is a control circuit for the spindle motor of a hard disk drive. The slew rate of the current during commutation between phases is of great concern. First, due to the inductance of the motor coils, the larger the rate of change of current, the larger the resulting voltage spikes. Voltage spikes can, in turn, create interference for other circuitry, such as the read channel circuits coupled to the read/write heads of the hard disk drive. Second, when the total current drawn by the inverter changes during commutation, there is more torque ripple, and there may be audible noise.
One known approach to these problems is to control the motor current during the commutation by imposing on the phase that is being turned off, in a closed loop control, a voltage which causes a non-linear change in motor current. This can potentially cause instability due to the coupling between phases, involving positive feedback. Also, due to the nonlinear change in the motor current, the flyback voltage on a coil which is being turned off can generate significant voltage spikes, which in turn can affect other circuitry. Further, the torque ripple can be undesirable high, and audible noise may even be generated. In addition, the control circuitry required to implement this approach is relatively complex.